import { TableProps, ColumnType } from "antd/es/table"

export type QueryTableProps = Omit<TableProps<any>, "columns"> & {
    loading?: boolean
    columns: Columns
    requestUrl: string
    multipleButtons: any[]
    responseDatafield: string
    rightButtons: any[]
    carryParams: object
    pagingInServer: boolean
    rowSelectKey: string[]
    handleDataSource: (value: any) => any
    handleRequestSearchParams: (value: any) => any
    leftCustomComp?: React.ReactNode
    defaultFormNum: number
    reqExtraParams: any
  }
  export type UrlState = {
    pageNum?: number
    pageSize?: number
    isDesc?: boolean
    orderBy?: string
    state?: string
    [k: string]: unknown

  }
  export interface Column extends ColumnType<any> {
    range?: range
    type?: string
    dataIndex: string
    render?: (text: any, record: Column) => React.ReactNode
    [propname: string]: any
  }
  export type Columns = Column[]
  export type range = {
    v: string | number | boolean
    t: string
  }[]
  export type renderArugs = [any, Column]